+ [IAD-MIGRATION-127] Добавление кодо ошибок с других спецификаций домена IAD

Наполнение мастер-данных базовыми кодами ошибок ИИ и СУБД симулятора

Author

Services Task & Simulation Framework Documentation

Published

July 13, 2026

NoteКраткая карточка задачи
  • Репозиторий / Компонент: auth-service (База auth_db, контур SECURITY).
  • Целевая СУБД: PostgreSQL v15+.
  • Ссылка на Метод: Метод регистрации
  • Статус: Готово к реализации

  • Инструкция по шагам: Выполнить стартовую SEED-миграцию для наполнения реестра каноническими кодами ошибок, возникшими в рамках пересборки 14 топиков и 22 sequence-диаграмм архитектурного манифеста.

Вилки исключений и обработка ошибок

Ошибка: Токен просрочен или аннулирован (HTTP 401 Unauthorized — Шаг 9)

Выбрасывается на Шаге 9, если refresh_token истек по времени жизни, либо если сработал триггер детекции повторного использования (is_revoked == true). Это жесткий сигнал для Flutter полностью сбросить локальный кэш и принудительно выкинуть пользователя на экран авторизации.

  • Заголовки ответа (Response Headers):
    • Content-Type: application/json
  • Тело ответа (Response Body):
{
  "error_code": "ERR-REFRESH-TOKEN-EXPIRED",
  "message": "Сессия авторизации полностью истекла или была аннулирована из соображений безопасности. Необходим повторный вход.",
  "details": {
    "action": "Clear Flutter Secure Storage, disconnect WebSockets, and route user to Login Screen."
  }
}

Ошибка: Токен поврежден или имеет неверный формат (HTTP 422 Unprocessable Entity)

Выбрасывается бэкенд-шлюзом FastAPI, если переданная строка в поле refresh_token пустая или нарушает валидацию длины Pydantic-модели.

{
  "error_code": "ERR-VALIDATION-FAILED",
  "message": "Передан некорректный или пустой токен обновления refresh_token.",
  "details": [
    {
      "loc": ["body", "refresh_token"],
      "msg": "Field constraints violation: token string cannot be empty",
      "type": "value_error.str.min_length"
    }
  ]
}